unit uSBD_ModelServiceRego;
interface
uses uSBD_ServiceProvider;


// function MakeStockProvider: ISBDUnit_ServiceProvider;
function MakeStockProvider: IServiceProvider;

{$REGION 'xmldoc'}
/// <remarks>
/// This routine registers the following SBD Unit Testing Model oriented services.
/// <table border="1">
/// <tr><td>Unit</td> <td>Interface</td> <td>Configurations</td></tr>
/// <tr><td>uSBDUnit_TestSuiteNodeImpl</td> <td>ITestNode</td> <td>nkTestSuite</td></tr>
/// <tr><td>uSBDUnit_TestSchedulerImpl</td> <td>ITestScheduler</td> <td></td></tr>
/// <tr><td>uSBDUnit_TestPointIteration</td> <td>ITestEnumerableGetter</td> <td></td></tr>
/// <tr><td>uSBDUnit_TestHarness</td> <td>ITestHarness</td> <td>Buffered, Mastered</td></tr>
/// <tr><td>uSBDUnit_TestCaseNodeImpl</td> <td>ITestNode</td> <td>nkTestCase</td></tr>
/// <tr><td>uSBDUnit_TestCaseNodeImpl</td> <td>INonFailMessage</td> <td>Info, Warning</td></tr>
/// <tr><td>uSBDUnit_LeakageDetector</td> <td>ILeakageDetector</td> <td></td></tr>
/// <tr><td>uSBDUnit_LeakageDetector</td> <td>IInterface ( if UseMemoryMetering)</td> <td></td></tr>
/// <tr><td>uSBDUnit_JobMillImpl</td> <td>IJobMill</td> <td></td></tr>
/// <tr><td>uSBDUnit_HierarchyToLinearView</td> <td>IHierarchyToLinearView_Converter</td> <td></td></tr>
/// </table>
/// </remarks>
{$ENDREGION}
procedure RegisterAllServicesForModel( const Provider: IServiceProvider);

implementation














uses uSBD_ServiceProviderImpl, uSBDUnit_TestSuiteNodeImpl,
     uSBDUnit_TestSchedulerImpl, uSBDUnit_TestPointIteration,
     uSBDUnit_TestHarness, uSBDUnit_TestCaseNodeImpl, uSBDUnit_LeakageDetector,
     uSBDUnit_JobMillImpl, uSBDUnit_HierarchyToLinearView;


{$Region 'version 1'}
//function MakeStockProvider: ISBDUnit_ServiceProvider;
//begin
//result := TSBDUnit_ServiceProvider.Create
//end;
{$endregion}

function MakeStockProvider: IServiceProvider;
begin
result := TServiceProvider.Create
end;

procedure RegisterAllServicesForModel( const Provider: IServiceProvider);
begin
uSBDUnit_TestSuiteNodeImpl    .RegisterServices( Provider);
uSBDUnit_TestSchedulerImpl    .RegisterServices( Provider);
uSBDUnit_TestPointIteration   .RegisterServices( Provider);
uSBDUnit_TestHarness          .RegisterServices( Provider);
uSBDUnit_TestCaseNodeImpl     .RegisterServices( Provider);
uSBDUnit_LeakageDetector      .RegisterServices( Provider);
uSBDUnit_JobMillImpl          .RegisterServices( Provider);
uSBDUnit_HierarchyToLinearView.RegisterServices( Provider);
end;


end.
